package com.mf.all.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.mf.all.entity.dto.TaskBo;
import com.mf.all.entity.dto.TaskNotificationBo;

import java.time.LocalDate;
import java.util.List;

/**
 * 任务通知表 服务类
 *
 * @author mf
 * @since 2025-03-08
 */
public interface ITaskNotificationService extends IService<TaskNotificationBo> {
    /**
     * 通过任务id查询,日期查询任务通知
     */
    TaskNotificationBo findByTaskIdAndNotificationDate(Integer taskId, LocalDate notificationDate);

    /**
     * 设置任务通知
     */
    void setTaskNotification(TaskBo taskBo);

    /**
     * 发送通知
     */
    void sendNotification();

    /**
     * 设置当日任务通知
     */
    void setDayNotification(LocalDate date, List<TaskBo> taskBoList);

    /**
     * 根据任务id删除没有通知的任务通知
     */

    void deleteByTaskId(Integer taskId);
}
